package com.behelpful.common.core.enums;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonValue;
import lombok.Getter;

/**
 * 测试的枚举
 * 注解 @JsonFormat 指定系列化时的方式
 * 注解 @JsonValue 指定系列化的时候指定字段值为系列化的值,优先级高于 @JsonFormat
 *
 * @author Alay
 * @date 2021-08-19 10:27
 * @project be-helpful
 * @since
 */
@Getter
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum TestEnum implements IEnum<String> {

    /**
     * 测试的
     */
    TEST(1, "测试枚举值");

    /**
     * 码
     */
    private int code;

    /**
     * @JsonValue 指定系列化的时候指定字段值为系列化的值, 优先级高于 @JsonFormat
     * 值
     */
    @JsonValue
    private String value;


    TestEnum(int code, String value) {
        this.code = code;
        this.value = value;
    }
}